package com.tyk.bookstore.back.product.model.query;


import com.tyk.bookstore.back.common.core.model.page.PageQuery;
import com.tyk.bookstore.back.product.model.enume.BookState;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

/**
 * @author tyk
 * @description 书籍
 */
@Data
public class BookPageQuery extends PageQuery {

    @Schema(description = "ID")
    private Long id;

    @Schema(description = "书籍编号")
    private String bookNo;

    @Schema(description = "ISBN")
    private String isbn;

    @Schema(description = "书名（模糊）")
    private String nameLike;

    @Schema(description = "价格：起始价格")
    private BigDecimal priceFrom;

    @Schema(description = "价格：终止价格")
    private BigDecimal priceTo;

    @Schema(description = "作者ID")
    private List<Long> authorIdList;

    @Schema(description = "低级分类ID")
    private Long clazzId;

    @Schema(description = "状态")
    private BookState state;

    @Schema(description = "出版社ID")
    private Long publisherId;

    @Schema(description = "出版时间：起始时间")
    private LocalDateTime publishTimeFrom;

    @Schema(description = "出版时间：终止时间")
    private LocalDateTime publishTimeTo;

    @Schema(description = "创建时间：起始时间")
    private LocalDateTime startTime;

    @Schema(description = "创建时间：终止时间")
    private LocalDateTime endTime;
}
